Cloud environments provide a variety of services to consumers on demand using shared pool of computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, containers, virtual machines, or any combination of these). Examples of cloud environments can include a software-as-a-service (SaaS) environment, a platform-as-a-service (PaaS) environment, or an infrastructure-as-a-service (IaaS) environment.
Some cloud environments can run microservice applications. A microservice application can be a software application that is structured as a collection of loosely coupled, stateless services that communicate with each other through application programming interfaces (APIs). These stateless services can be referred to as microservices. As one example, a microservice application can include two or more microservices, with well-defined web service APIs, working together to generate responses to end-user requests. Individual microservices may be “owned” or developed by different developers, with each microservice being developed, updated, and deployed independently of other microservices. Microservice applications can provide improvements to scalability, robustness, isolation, and development time over conventional applications, such as monolithic applications.